Initializes a new FreeHandShearCommand class object with explicit parameters.
Syntax
Parameters
- amplitudes
- Array of integers that represent shear wave values.
The real values of the array elements is divided by 1000, and the valid value of each element in the amplitudes array is
between -1000 and 1000. These values are generally obtained from the GetCurvePoints
utility method.
- scale
- Factor used to increase or decrease the various amplitude values in the amplitudes array.
Each value in the amplitudes array is multiplied by this factor. The real factor value is the scale value divided by 100. The valid range is from 0 to 100.
- fillColor
- Specifies the fill color for any exposed areas.
- flags
- Flags that indicate how to handle exposed areas, and the direction of the shear wave.
Example
Visual Basic | Copy Code |
---|
ImageProcessing.SpecialEffects.FreeHandShearCommand.FreeHandShearConstructor
Public Sub FreeHandShearConstructorExample()
RasterCodecs.Startup()
Dim codecs As New RasterCodecs()
codecs.ThrowExceptionsOnInvalidImages = True
Dim leadImage As RasterImage = codecs.Load("C:\Program Files\LEAD Technologies\LEADTOOLS 15\Images\Master.jpg")
Dim userPoint() As Point
ReDim userPoint(3)
userPoint(0).X = 0
userPoint(0).Y = 0
userPoint(1).X = 3
userPoint(1).Y = 10
userPoint(2).X = 9
userPoint(2).Y = -10
userPoint(3).X = 12
userPoint(3).Y = 0
Dim amplitudes() As Integer
ReDim amplitudes(12)
EffectsUtilities.GetCurvePoints(amplitudes, userPoint, CurvePointsType.Linear)
Dim maximum As Integer
Dim i As Integer
maximum = 0
For i = 0 To 12
If (maximum < amplitudes(i)) Then
maximum = amplitudes(i)
End If
Next
If (maximum <> 0) Then
For i = 0 To 12
amplitudes(i) = (1000 * amplitudes(i) \ Math.Abs(maximum))
Next
End If
Dim command As FreeHandShearCommand
command = New FreeHandShearCommand(amplitudes, 100, New RasterColor(0, 0, 0), FreeHandShearCommandFlags.Horizontal Or FreeHandShearCommandFlags.Repeat)
command.Run(leadImage)
codecs.Save(leadImage, "C:\Program Files\LEAD Technologies\LEADTOOLS 15\Images\Result.jpg", RasterImageFormat.Jpeg, 24)
RasterCodecs.Shutdown()
End Sub |
C# | Copy Code |
---|
ImageProcessing.SpecialEffects.FreeHandShearCommand.FreeHandShearConstructor public void FreeHandShearConstructorExample() { // Load an image RasterCodecs.Startup(); RasterCodecs codecs = new RasterCodecs(); codecs.ThrowExceptionsOnInvalidImages = true; RasterImage image = codecs.Load(@"C:\Program Files\LEAD Technologies\LEADTOOLS 15\Images\Master.jpg"); // Prepare the command Point[] userPoint = new Point[4]; // Fill apUserPoint array with points that define a triangular wave userPoint[0].X = 0; userPoint[0].Y = 0; userPoint[1].X = 3; userPoint[1].Y = 10; userPoint[2].X = 9; userPoint[2].Y = -10; userPoint[3].X = 12; userPoint[3].Y = 0; int[] amplitudes = new int[13]; // Draw a triangular wave according to UserPoint points and store the Amplitudes values in the Amplitudes array. EffectsUtilities.GetCurvePoints(amplitudes, userPoint, CurvePointsType.Linear); // Normalize Amplitudes array (maximum value in Amplitudes is 1000 and lower is -1000). int maximum, i; for(maximum = 0, i = 0; i < 13; i++) { if(maximum < amplitudes [i]) maximum = amplitudes [i]; } if(maximum != 0) { for(i = 0; i < 13; i++) { amplitudes [i] = (1000 * amplitudes [i] / Math.Abs(maximum)); } } FreeHandShearCommand command = new FreeHandShearCommand(amplitudes, 100, new RasterColor(0, 0, 0), FreeHandShearCommandFlags.Horizontal | FreeHandShearCommandFlags.Repeat); // Apply the shear wave horizontally. command.Run(image); codecs.Save(image, @"C:\Program Files\LEAD Technologies\LEADTOOLS 15\Images\Result.jpg", RasterImageFormat.Jpeg, 24); RasterCodecs.Shutdown(); } |
Requirements
Target Platforms: Microsoft .NET Framework 2.0, Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family
See Also